import Main from '@/components/main'

// import other from './other'
// import parentView from '@/components/parent-view'

/**
 * iview-admin中meta除了原生参数外可配置的参数:
 * meta: {
 *  title: { String|Number|Function }
 *         显示在侧边栏、面包屑和标签栏的文字
 *         使用'{{ 多语言字段 }}'形式结合多语言使用，例子看多语言的路由配置;
 *         可以传入一个回调函数，参数是当前路由对象，例子看动态路由和带参路由
 *  hideInBread: (false) 设为true后此级路由将不会出现在面包屑中，示例看QQ群路由配置
 *  hideInMenu: (false) 设为true后在左侧菜单不会显示该页面选项
 *  notCache: (false) 设为true后页面在切换标签后不会缓存，如果需要缓存，无需设置这个字段，而且需要设置页面组件name属性和路由配置的name一致
 *  access: (null) 可访问该页面的权限数组，当前路由设置的权限会影响子路由
 *  icon: (-) 该页面在左侧菜单、面包屑和标签导航处显示的图标，如果是自定义图标，需要在图标名称前加下划线'_'
 *  beforeCloseName: (-) 设置该字段，则在关闭当前tab页时会去'@/router/before-close.js'里寻找该字段名对应的方法，作为关闭前的钩子函数
 * }
 */
// 基础页面路由
const baseRouter = [

  {
    path: '/login',
    name: 'login',
    meta: {
      title: '',
      hideInMenu: true
    },
    component: () => import('@/view/login/login.vue')
  },
  {
    path: '/loading',
    name: 'loading',
    meta: {
      title: '',
      hideInMenu: true
    },
    component: () => import('@/view/login/loading.vue')
  },
  {
    path: '/nologinlogin',
    name: 'nologinlogin',
    meta: {
      title: '',
      hideInMenu: true
    },
    component: () => import('@/view/login/nologinlogin.vue')
  },
  {
    path: '/findpassword',
    name: 'findpassword',
    meta: {
      title: '忘记密码',
      hideInMenu: true,
      visit: true
    },
    component: () =>
      import('@/view/registrationPassword/findpassword/findpassword.vue')
  },
  {
    path: '/accountregistration',
    name: 'accountregistration',
    meta: {
      title: '注册',
      hideInMenu: true,
      visit: true
    },
    component: () =>
      import('@/view/registrationPassword/accountregistRation/registration.vue')
  },
  {
    path: '/register',
    name: 'register',
    meta: {
      title: '注册',
      hideInMenu: true,
      visit: true
    },
    component: () =>
      import('@/view/login/register.vue')
  },
  // AccountRegistration
  {
    path: '/message',
    name: 'message',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true
    },
    children: [
      {
        path: 'message_page',
        name: 'message_page',
        meta: {
          icon: 'md-notifications',
          title: '消息中心'
        },
        component: () => import('@/view/single-page/message/index.vue')
      }
    ]
  },
  {
    path: '/error_logger',
    name: 'error_logger',
    meta: {
      hideInBread: true,
      hideInMenu: true
    },
    component: Main,
    children: [
      {
        path: 'error_logger_page',
        name: 'error_logger_page',
        meta: {
          icon: 'ios-bug',
          title: '错误收集'
        },
        component: () => import('@/view/single-page/error-logger.vue')
      }
    ]
  },
  {
    path: '/argu',
    name: 'argu',
    meta: {
      hideInMenu: true
    },
    component: Main,
    children: [
      {
        path: 'params/:id',
        name: 'params',
        meta: {
          icon: 'md-flower',
          title: route => `{{ params }}-${route.params.id}`,
          notCache: true,
          beforeCloseName: 'before_close_normal'
        },
        component: () => import('@/view/argu-page/params.vue')
      },
      {
        path: 'query',
        name: 'query',
        meta: {
          icon: 'md-flower',
          title: route => `{{ query }}-${route.query.id}`,
          notCache: true
        },
        component: () => import('@/view/argu-page/query.vue')
      }
    ]
  },
  {
    path: '/401',
    name: 'error_401',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/401.vue')
  },
  {
    path: '/500',
    name: 'error_500',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/500.vue')
  },
  {
    path: '/404',
    name: 'error_404',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/404.vue')
  },


  {
    path: '',
    name: 'home',
    redirect: 'home',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true,
      title: '工作台',
    },
    children: [
      {
        path: 'home',
        name: 'home',
        meta: {
          hideInMenu: true,
          title: '工作台',
          notCache: true,
        },
        component: () => import('@/view/single-page/home')
      }
    ]
  },
  // {
  //   path: '/zhengceguanli',
  //   name: 'zhengceguanli',
  //   redirect: 'zhengceguanli',
  //   component: Main,
  //   meta: {
  //     hideInBread: true,
  //     hideInMenu: true,
  //     title: '机构管理',
  //   },
  //   children: [
  //     {
  //       path: '/zhengceguanli',
  //       name: 'zhengceguanli',
  //       meta: {
  //         hideInMenu: true,
  //         title: '机构管理',
  //         notCache: true,
  //       },
  //       component: () => import('@/view/jigouguanli/index.vue')
  //     }
  //   ]
  // },

  // 订单退款
  {
    path: '/chargeback',
    name: 'chargeback',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true,
      title: '订单退款',
    },
    children: [
      {
        path: 'chargeback',
        name: 'chargeback',
        meta: {
          title: '订单退款',
        },
        component: () => import('@/view/paymentInformation/chargeback/chargeback.vue')
      },
    ]
  },
  // 退款订单
  {
    path: '/returnOrder',
    name: 'returnOrder',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true,
      title: '退款订单',
    },
    children: [
      {
        path: 'returnOrder',
        name: 'returnOrder',
        meta: {
          title: '退款订单',
        },
        component: () => import('@/view/paymentInformation/returnOrder/returnOrder.vue')
      },
    ]
  },


  // 新增政策
  {
    path: '/policyAdd',
    name: 'policyAdd',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true,
      title: '政策管理',
    },
    children: [
      {
        path: '/policyAdd',
        name: 'policyAdd',
        meta: {
          hideInBread: true,
          hideInMenu: true,
          title: '政策管理',
        },
        component: () => import('@/view/policyManagement/policyAdd')
      },
    ]
  },

  // 政策详情
  {
    path: '/policyDetail',
    name: 'policyDetail',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true,
      title: '政策管理',
    },
    children: [
      {
        path: '/policyDetail',
        name: 'policyDetail',
        meta: {
          hideInBread: true,
          hideInMenu: true,
          title: '政策管理',
        },
        component: () => import('@/view/policyManagement/components/detail')
      },
    ]
  }
]
// 需要权限控制的页面
// export const Routers = [
//   {
//     path: '',
//     name: '/home',
//     redirect: 'home',
//     component: Main,
//     meta: {
//       hideInBread: true,
//       hideInMenu: true,
//       title: '工作台',
//     },
//     children: [
//       {
//         path: '/home',
//         name: 'home',
//         meta: {
//           hideInMenu: true,
//           title: '工作台',
//           notCache: true,
//         },
//         component: () => import('@/view/single-page/home')
//       }
//     ]
//   },
//   {
//     path: '/loginPeople',
//     name: 'loginPeople',
//     component: Main,
//     meta: {
//       hideInBread: true,
//       hideInMenu: true,
//       title: '统计分析',
//     },
//     children: [
//       {
//         path: '/loginPeople',
//         name: 'loginPeople',
//         meta: {
//           hideInMenu: true,
//           title: '统计分析',
//           notCache: true,
//         },
//         component: () => import('@/view/secondMenu/secondMenuIndex')
//       }
//     ]
//   }
// ]
export default baseRouter
// // 动态路由添加方法
// export function initDynamicRoutes () {
//   const currentRoutes = router.options.routes
//   const rights = store.state.user.rights || []
//   rights.forEach(item => {
//     item.children.forEach(item => {
//       const temp = mappingPath[item.path]
//       temp.meta = item.rights
//       currentRoutes[0].children.push(temp)
//     })
//   })
//   router.addRoutes(currentRoutes)
// }
